SetTagAttribute(Int32,String,String[]) Method
In This Topic
Creates a new attribute for a structure element (tag) specified by its unique (tag's) identifier, that is a part of the document's tag structure tree related to the currently loaded PDF document.
This attribute consists of a key-value pair: the key is the attribute's name and the value is the attribute's corresponding value. You are allowed to set the attribute's value as an array of strings using this method.
Syntax
'Declaration
Public Overloads Function SetTagAttribute( _
ByVal As Integer, _
ByVal As String, _
ByVal () As String _
) As GdPictureStatus
public GdPictureStatus SetTagAttribute(
int ,
string ,
string[]
)
public function SetTagAttribute(
: Integer;
: String;
: Stringarray of
): GdPictureStatus;
public function SetTagAttribute(
: int,
: String,
: String[]
) : GdPictureStatus;
public: GdPictureStatus SetTagAttribute(
int ,
string* ,
string*[]*
)
public:
GdPictureStatus SetTagAttribute(
int ,
String^ ,
array<String^>^
)
Parameters
- TagID
- A unique tag identifier of the tag's tree element to which the new attribute will be attached.
- Key
- A name of the newly defined attribute to be attached to the specified tag's tree element.
- Value
- A value of the newly defined attribute as an array of strings, that is to be attached to the specified tag's tree element.
Return Value
A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK.
We strongly recommend always checking this status first.
Example
How to set the border style attribute to a newly created tag attached to the table cell.
Dim caption As String = "Example: SetTagAttribute"
Using gdpicturePDF As GdPicturePDF = New GdPicturePDF()
Dim message As String = ""
If (gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) = GdPictureStatus.OK) Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetTitle("My first PDF/UA document")
Dim fontResName As String = gdpicturePDF.AddTrueTypeFontU("Arial", False, False, True)
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTextSize(16) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetLineColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetLineWidth(3) <> GdPictureStatus.OK) Then
message = "Setting text properties has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagRootID As Integer = gdpicturePDF.GetTagRootID()
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The GetTagRootID() method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTable As Integer = gdpicturePDF.NewTag(tagRootID, "Table")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(Table) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableHeader As Integer = gdpicturePDF.NewTag(tagTable, "THead")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(THead) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableBody As Integer = gdpicturePDF.NewTag(tagTable, "TBody")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(TBody) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableRow As Integer = gdpicturePDF.NewTag(tagTableHeader, "TR")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
If (gdpicturePDF.BeginMarkedContent("Artifact") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawLine(100, 100, 300, 100) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.LightGray) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawRectangle(100, 100, 200, 30, True, False) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim borderStyle As String() = {"None", "Solid", "None", "None"}
Dim tagTableHeaderData As Integer = gdpicturePDF.NewTag(tagTableRow, "TH")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) Or
(gdpicturePDF.DrawTextBox(fontResName, 100, 100, 200, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header1") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the first table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
tagTableHeaderData = gdpicturePDF.NewTag(tagTableRow, "TH")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawTextBox(fontResName, 200, 100, 300, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header2") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the second table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
tagTableRow = gdpicturePDF.NewTag(tagTableBody, "TR")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
If (gdpicturePDF.BeginMarkedContent("Artifact") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawLine(100, 130, 300, 130) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.LightGray) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawRectangle(100, 130, 200, 30, True, False) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableData As Integer = gdpicturePDF.NewTag(tagTableRow, "TD")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawTextBox(fontResName, 100, 130, 200, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data1") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the first table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
tagTableData = gdpicturePDF.NewTag(tagTableRow, "TD")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawTextBox(fontResName, 200, 130, 300, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data2") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the second table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
If gdpicturePDF.SaveToFile("test_tagged.pdf") = GdPictureStatus.OK Then
message = "The example has been followed successfully and the file has been saved."
Else
message = "The example has been followed successfully, but the file can't be saved. Status:" + gdpicturePDF.GetStat().ToString()
End If
[error]:
MessageBox.Show(message, caption)
gdpicturePDF.CloseDocument()
Else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
End Using
string caption = "Example: SetTagAttribute";
using (GdPicturePDF gdpicturePDF = new GdPicturePDF())
{
string message = "";
if ((gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) == GdPictureStatus.OK) &&
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) == GdPictureStatus.OK))
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
// This is required to have a valid PDF_UA document.
gdpicturePDF.SetTitle("My first PDF/UA document");
string fontResName = gdpicturePDF.AddTrueTypeFontU("Arial", false, false, true);
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTextSize(16) != GdPictureStatus.OK) ||
(gdpicturePDF.SetLineColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.SetLineWidth(3) != GdPictureStatus.OK))
{
message = "Setting text properties has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagRootID = gdpicturePDF.GetTagRootID();
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The GetTagRootID() method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTable = gdpicturePDF.NewTag(tagRootID, "Table");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(Table) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableHeader = gdpicturePDF.NewTag(tagTable, "THead");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(THead) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableBody = gdpicturePDF.NewTag(tagTable, "TBody");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(TBody) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableRow = gdpicturePDF.NewTag(tagTableHeader, "TR");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
if ((gdpicturePDF.BeginMarkedContent("Artifact") != GdPictureStatus.OK) ||
(gdpicturePDF.DrawLine(100, 100, 300, 100) != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.LightGray) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawRectangle(100, 100, 200, 30, true, false) != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
string[] borderStyle = new[] { "None", "Solid", "None", "None" };
int tagTableHeaderData = gdpicturePDF.NewTag(tagTableRow, "TH");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) |
(gdpicturePDF.DrawTextBox(fontResName, 100, 100, 200, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header1") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the first table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
tagTableHeaderData = gdpicturePDF.NewTag(tagTableRow, "TH");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawTextBox(fontResName, 200, 100, 300, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header2") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the second table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
tagTableRow = gdpicturePDF.NewTag(tagTableBody, "TR");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
if ((gdpicturePDF.BeginMarkedContent("Artifact") != GdPictureStatus.OK) ||
(gdpicturePDF.DrawLine(100, 130, 300, 130) != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.LightGray) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawRectangle(100, 130, 200, 30, true, false) != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableData = gdpicturePDF.NewTag(tagTableRow, "TD");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawTextBox(fontResName, 100, 130, 200, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data1") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the first table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
tagTableData = gdpicturePDF.NewTag(tagTableRow, "TD");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawTextBox(fontResName, 200, 130, 300, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data2") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the second table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
if (gdpicturePDF.SaveToFile("test_tagged.pdf") == GdPictureStatus.OK)
message = "The example has been followed successfully and the file has been saved.";
else
message = "The example has been followed successfully, but the file can't be saved. Status:" + gdpicturePDF.GetStat().ToString();
error:
MessageBox.Show(message, caption);
gdpicturePDF.CloseDocument();
}
else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption);
}
Example
How to set the border style attribute to a newly created tag attached to the table cell.
Dim caption As String = "Example: SetTagAttribute"
Using gdpicturePDF As GdPicturePDF = New GdPicturePDF()
Dim message As String = ""
If (gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) = GdPictureStatus.OK) Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetTitle("My first PDF/UA document")
Dim fontResName As String = gdpicturePDF.AddTrueTypeFontU("Arial", False, False, True)
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTextSize(16) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetLineColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetLineWidth(3) <> GdPictureStatus.OK) Then
message = "Setting text properties has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagRootID As Integer = gdpicturePDF.GetTagRootID()
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The GetTagRootID() method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTable As Integer = gdpicturePDF.NewTag(tagRootID, "Table")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(Table) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableHeader As Integer = gdpicturePDF.NewTag(tagTable, "THead")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(THead) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableBody As Integer = gdpicturePDF.NewTag(tagTable, "TBody")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(TBody) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableRow As Integer = gdpicturePDF.NewTag(tagTableHeader, "TR")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
If (gdpicturePDF.BeginMarkedContent("Artifact") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawLine(100, 100, 300, 100) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.LightGray) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawRectangle(100, 100, 200, 30, True, False) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim borderStyle As String() = {"None", "Solid", "None", "None"}
Dim tagTableHeaderData As Integer = gdpicturePDF.NewTag(tagTableRow, "TH")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) Or
(gdpicturePDF.DrawTextBox(fontResName, 100, 100, 200, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header1") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the first table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
tagTableHeaderData = gdpicturePDF.NewTag(tagTableRow, "TH")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawTextBox(fontResName, 200, 100, 300, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header2") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the second table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
tagTableRow = gdpicturePDF.NewTag(tagTableBody, "TR")
If gdpicturePDF.GetStat() <> GdPictureStatus.OK Then
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
If (gdpicturePDF.BeginMarkedContent("Artifact") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawLine(100, 130, 300, 130) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.LightGray) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawRectangle(100, 130, 200, 30, True, False) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
Dim tagTableData As Integer = gdpicturePDF.NewTag(tagTableRow, "TD")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawTextBox(fontResName, 100, 130, 200, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data1") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the first table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
tagTableData = gdpicturePDF.NewTag(tagTableRow, "TD")
If (gdpicturePDF.GetStat() <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.SetFillColor(Color.Black) <> GdPictureStatus.OK) OrElse
(gdpicturePDF.DrawTextBox(fontResName, 200, 130, 300, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data2") <> GdPictureStatus.OK) OrElse
(gdpicturePDF.EndMarkedContent() <> GdPictureStatus.OK) Then
message = "Creating the second table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString()
GoTo [error]
End If
If gdpicturePDF.SaveToFile("test_tagged.pdf") = GdPictureStatus.OK Then
message = "The example has been followed successfully and the file has been saved."
Else
message = "The example has been followed successfully, but the file can't be saved. Status:" + gdpicturePDF.GetStat().ToString()
End If
[error]:
MessageBox.Show(message, caption)
gdpicturePDF.CloseDocument()
Else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption)
End If
End Using
string caption = "Example: SetTagAttribute";
using (GdPicturePDF gdpicturePDF = new GdPicturePDF())
{
string message = "";
if ((gdpicturePDF.NewPDF(PdfConformance.PDF_UA_1) == GdPictureStatus.OK) &&
(gdpicturePDF.NewPage(PdfPageSizes.PdfPageSizeA4) == GdPictureStatus.OK))
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
// This is required to have a valid PDF_UA document.
gdpicturePDF.SetTitle("My first PDF/UA document");
string fontResName = gdpicturePDF.AddTrueTypeFontU("Arial", false, false, true);
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTextSize(16) != GdPictureStatus.OK) ||
(gdpicturePDF.SetLineColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.SetLineWidth(3) != GdPictureStatus.OK))
{
message = "Setting text properties has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagRootID = gdpicturePDF.GetTagRootID();
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The GetTagRootID() method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTable = gdpicturePDF.NewTag(tagRootID, "Table");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(Table) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableHeader = gdpicturePDF.NewTag(tagTable, "THead");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(THead) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableBody = gdpicturePDF.NewTag(tagTable, "TBody");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(TBody) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableRow = gdpicturePDF.NewTag(tagTableHeader, "TR");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
if ((gdpicturePDF.BeginMarkedContent("Artifact") != GdPictureStatus.OK) ||
(gdpicturePDF.DrawLine(100, 100, 300, 100) != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.LightGray) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawRectangle(100, 100, 200, 30, true, false) != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
string[] borderStyle = new[] { "None", "Solid", "None", "None" };
int tagTableHeaderData = gdpicturePDF.NewTag(tagTableRow, "TH");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) |
(gdpicturePDF.DrawTextBox(fontResName, 100, 100, 200, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header1") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the first table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
tagTableHeaderData = gdpicturePDF.NewTag(tagTableRow, "TH");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableHeaderData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableHeaderData, "TH") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawTextBox(fontResName, 200, 100, 300, 130, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Header2") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the second table header cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
tagTableRow = gdpicturePDF.NewTag(tagTableBody, "TR");
if (gdpicturePDF.GetStat() != GdPictureStatus.OK)
{
message = "The NewTag(TR) method has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
if ((gdpicturePDF.BeginMarkedContent("Artifact") != GdPictureStatus.OK) ||
(gdpicturePDF.DrawLine(100, 130, 300, 130) != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.LightGray) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawRectangle(100, 130, 200, 30, true, false) != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the line/artifact has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
int tagTableData = gdpicturePDF.NewTag(tagTableRow, "TD");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawTextBox(fontResName, 100, 130, 200, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data1") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the first table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
tagTableData = gdpicturePDF.NewTag(tagTableRow, "TD");
if ((gdpicturePDF.GetStat() != GdPictureStatus.OK) ||
(gdpicturePDF.SetTagAttribute(tagTableData, "TBorderStyle", borderStyle) != GdPictureStatus.OK) ||
(gdpicturePDF.BeginMarkedContentSequence(tagTableData, "TD") != GdPictureStatus.OK) ||
(gdpicturePDF.SetFillColor(Color.Black) != GdPictureStatus.OK) ||
(gdpicturePDF.DrawTextBox(fontResName, 200, 130, 300, 160, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Data2") != GdPictureStatus.OK) ||
(gdpicturePDF.EndMarkedContent() != GdPictureStatus.OK))
{
message = "Creating the second table data cell has failed. Status: " + gdpicturePDF.GetStat().ToString();
goto error;
}
if (gdpicturePDF.SaveToFile("test_tagged.pdf") == GdPictureStatus.OK)
message = "The example has been followed successfully and the file has been saved.";
else
message = "The example has been followed successfully, but the file can't be saved. Status:" + gdpicturePDF.GetStat().ToString();
error:
MessageBox.Show(message, caption);
gdpicturePDF.CloseDocument();
}
else
MessageBox.Show("The new document can't be created. Status: " + gdpicturePDF.GetStat().ToString(), caption);
}
See Also